diff -Naur a/Utility.h b/Utility.h
--- a/Utility.h	2010-05-16 11:37:32.000000000 +0000
+++ b/Utility.h	2017-06-13 18:55:32.273913477 +0000
@@ -92,16 +92,6 @@
     CallEach(observers, searchable, &Subject::Register);
     here the Subject is the type of Caller
 */
-template <typename CalleeContainer, typename Caller, typename Op>
-void CallEach(const CalleeContainer& container, Caller& caller, Op op)
-{
-    for_each(container.begin(), container.end(), bind1st(mem_fun(op), caller));
-}
-template <typename T>
-bool IsValueInRange(T value, T lowerBound, T upperBound)
-{
-    return LowerBoundFit(value, lowerBound) && UpperBoundFit(value, upperBound);
-}
 template <typename T>
 bool BoundSpecified(T boundValue)
 {
@@ -130,4 +120,14 @@
     return false;
 }
 
+template <typename CalleeContainer, typename Caller, typename Op>
+void CallEach(const CalleeContainer& container, Caller& caller, Op op)
+{
+    for_each(container.begin(), container.end(), bind1st(mem_fun(op), caller));
+}
+template <typename T>
+bool IsValueInRange(T value, T lowerBound, T upperBound)
+{
+    return LowerBoundFit(value, lowerBound) && UpperBoundFit(value, upperBound);
+}
 #endif
